/*
 * CommandsFileTextFormat.h
 *
 *  Created on: Dec 12, 2014
 *      Authors: Avihay Avitan & Stefan Farcas
 */

#ifndef COMMANDSFILETEXTFORMAT_H_
#define COMMANDSFILETEXTFORMAT_H_

#include "IFileFormat.h"

namespace TextFileParserSpace {

/**
 * enum class defines the enums for lines that matched for this text format
 */
enum class CommandsFileLines { none = 0, SAT1 = 1 , SAT2 = 2, SAT3 = 3, command = 4 , end = 5 };

/**
 * CommandsFileTextFormat - an implementation of IFileFormat that defines the text format for commands file
 */
class CommandsFileTextFormat: public IFileFormat {
public:
	CommandsFileTextFormat();
	virtual ~CommandsFileTextFormat();
	virtual int getLineMatchedByFormat(string line);

private:
	string sat1Id_1st;
	string sat2Id_1st;
	string sat3Id_1st;
	string command_2nd;
	string delimiter_last;
	int state;
};

} /* namespace TextFileParserSpace */

#endif /* COMMANDSFILETEXTFORMAT_H_ */
